package com.tdd.mockexample;

import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.*;

import org.junit.Test;

public class LoginServiceTest {
	@Test
	public void loginWithCorrectPasswordAndAccount() {
		Account account = mock(Account.class);
		AccountRepoisitory repository = mock(AccountRepoisitory.class);

		when(repository.findAccountNamed(anyString())).thenReturn(account);
		when(account.passwordMatches(anyString())).thenReturn(true);

		LoginService loginService = new LoginService();

		loginService.login("account", "password");

		verify(account, times(1)).setLoggedIn(true);
	}
}
